Method and system for creating and sending handwritten or handdrawn messages

ABSTRACT

An electronic messaging system, and related method, employs a handwriting server component operable on a network with a messaging host server, and a client device operable with a handwritten messaging client connected to the network. The client device sets up a graphical data capture area into which a user can enter handwritten or handdrawn input through a suitable graphical input device. The handwritten or handdrawn input is captured and sent as pixel data or an attached graphics file in the supported network messaging protocol. The preferred form of the handwriting messaging component is a Java applet installed on the client device. The graphical input device can be a touch screen, pen input device, stylus pad, or attached drawing pad or mouse. The handwriting messaging client sets up a drawing editor/viewer that allows the user to compose, manipulate, send and view handwritten or handdrawn messages. The drawing editor/viewer can include a set of standard drawing tools and functions. In one disclosed embodiment, the handwritten messaging system is provided for MMS messaging on wireless or digital cellphone networks.

[0001] This U.S. patent application claims the priority of U.S. patentapplication Ser. No. 09/978,472, filed on Oct. 15, 2001, entitled“Method and System for Creating and Sending Handwritten Message”, nowissued as U.S. Pat. No. 6,564,249, which was a continuation-in-part ofU.S. patent application Ser. No. 09/687,351, filed on Oct. 11, 2000,entitled “Method and System for Creating and Sending Graphical Email”,issued as U.S. Pat. No. 6,304,898 on Oct. 16, 2001, which was based onthe priority of U.S. Provisional Application No. 60/159,636 filed onOct. 13, 1999, entitled “Graphical Email Drawing and File AttachmentSystem, all by the same inventor.

FIELD OF THE INVENTION

[0002] This invention relates to the processing of handwritten input inelectronic messaging, and specifically to an electronic messaging systemfor handwritten or handdrawn messages.

BACKGROUND OF THE INVENTION

[0003] Electronic messaging is a general method for sending andreceiving communications as digital data between computers on a network.The Internet has dramatically increased electronic messaging amongstmillions of users on global data networks. Many diffferent forms ofelectronic messaging are being used to send and receive communicationsin a wide variety of forms of structured and unstructured data.Businesses make extensive use of electronic messaging to conductbusiness communications and transactions between trading partners.Electronic mail (or email) is a popular form of electronic messaging forcommunications between users. Typical email messages are composed oftyped text or a combination of typed text and text or graphical filesthat are attached to the email message and opened with the appropriateprocessor or viewer. As the popularity of the Internet continues to growworldwide, more and more people numbering in the billions are expectedto use email for communications.

[0004] Recent advances in technology and standards have expanded thetypes and forms of devices that can connect to the Internet. In additionto dial-up and online connections between users computers and serversthat provide information services and email services, many types ofother devices are being connected to the Internet for communicationspurposes, including personal digital assistants (PDAs), text messagingpagers, digital cellphones enabled with Wireless Application Protocol(WAP), advanced digital game machines, digital set top boxes fortelevisions, and even CPU-controlled household appliances. Many of thesedevices having Internet access do not require or are not adapted to usea keyboard for inputting data. While there are other types of inputdevices that enable handwritten or handdrawn input, such as touchsensitive screens, stylus pads, optical pens, etc., they have not beenenabled for electronic messaging and other communication functions.

[0005] Handwritten or handdrawn input can be more convenient to use thana keyboard and, in many situations, would be uniquely necessary forcertain types of communication. Many written language systems, such asJapanese, Korean, Chinese, Arabic, Thai, Sanskrit, etc., use cursive orideographic characters that are very difficult to input by an equivalentmethod via keyboard. For example, text input of the Japanese writtenlanguage requires the use of simulated phonetic spelling methods(romanji, hiragana, and/or katakana) to select from thousands ofpossible kanji characters. Many mobile devices such as PDAs do not havekeyboards due to their limited size and form, or would become cumbersometo use if a keyboard must be attached or if text must be entered bycursoring through displays of softkeys. Disabled or hospitalized peoplewho have limited hand mobility may not be able to use a keyboardeffectively. Current legal and financial institutions still rely heavilyon the use of handwritten signatures to validate a person's uniqueidentity. And in many instances, people find it much easier tocommunicate an idea by drawing a picture, or prefer handwriting ordrawing a picture as more personal or expressive communication thantyping text on a keyboard.

[0006] There is thus a clear need for an electronic messaging systemthat allows people to communicate with their own handwriting or drawing,as contrasted to typed text. This need will continue to grow as thenumbers of global users and Internet-connected devices increase. None ofthe current electronic messaging methods allow a user to compose,manipulate, store, send, receive, and view a handwritten or handdrawnemail message.

SUMMARY OF THE INVENTION

[0007] In accordance with the present invention, an electronic messagingsystem, and related method, comprises a handwriting server componentoperable on a server computer on a wireless or cellphone network forreceiving a handwritten message sent from a user to be delivered to arecipient to whom it is addressed, and a handwriting client componentoperable with a messaging client on a wireless or cellphone device forsetting up a graphical data capture area into which a user can enterhandwritten or handdrawn input through a suitable graphical inputdevice, and for capturing the handwritten or handdrawn input asgraphical data and sending it via the network to the server componentfor handling as a handwritten message. The client component is alsooperable for setting up a graphical data viewing area for viewing thegraphical data sent with the handwritten message handled by the servercomponent.

[0008] In a preferred embodiment, the handwriting messaging component isa Java applet installed on a Java-enabled wireless or cellphone device.The graphical input device can be a touch screen, pen input device,stylus pad, or an attached drawing pad. The handwriting messagingcomponent sets up a drawing editor/viewer that allows the user tocompose, manipulate, and view handwritten or handdrawn messages. Theeditor/viewer can include standard drawing tools such as those for linesize, color, paper and border selection, circle and polygon shapes,spray paint, flood fill, color palette, undo and scrolling functions.

[0009] Other objects, features, and advantages of the present inventionwill be described in further detail below, with reference to thefollowing drawings:

BRIEF DESCRIPTION OF DRAWINGS

[0010]FIG. 1A is a diagram illustrating the connection of clientcomputers with pen devices to an email server computer on the Internet,and FIG. 1B shows the email handling components of the client and servercomputers;

[0011]FIG. 2A is a process flow diagram of an SMTP server version of thegraphical email system, and FIG. 2B is a schematic illustration of thenetwork connections of this version of the graphical email system;

[0012]FIG. 3A is a process flow diagram of a Lotus™ Domino serverversion of the graphical email system, and FIG. 3B is a schematicillustration of the network connections of this version of the graphicalemail system;

[0013]FIG. 4A is a process flow diagram of a real-time messaging serverversion of the graphical email system, and FIG. 4B is a schematicillustration of the network connections of this version of the graphicalemail system;

[0014]FIG. 5 is a schematic illustration of the network connections ofan Internet email server version of the graphical email system;

[0015]FIG. 6 is a schematic illustration of the network connections of aWAP-enabled cellphone or PDA version of the graphical email system; and

[0016]FIG. 7A is a schematic illustration of the user interface for thegraphical data capture and drawing functions of the graphical emailsystem; and FIG. 7B is an example of an editor/viewer interface for thegraphical email system on a personal digital assistant (PDA).

[0017]FIG. 8 is a schematic illustration of the handwritten messagingsystem operable on a wireless or cellphone device network.

[0018]FIG. 9 is a block diagram illustrating the operational sequencefor the handwritten messaging system.

[0019]FIG. 10 is a schematic diagram of the interconnection ofcomponents of the handwritten messaging system.

DETAILED DESCRIPTION OF INVENTION

[0020] In the following description, exemplary embodiments of thehandwritten or handdrawn messaging system of the present invention areprovided for different network environments, such as email messaging onthe Internet, real-time (instant IM) messaging on IM networks, and MMSmessaging on wireless or digital cellphone networks. This U.S. patentapplication is directed particularly to the latter network environment.

[0021] Referring to FIG. 1A, the general system architecture of thehandwritten messaging system (and related method) is illustrated foremail networks. A plurality of client computers 110, 111, etc., adaptedfor handwriting or handdrawing input are used by users to connect via anetwork (the Internet or any type of multi-user network) to a servercomputer 120. In the context of this description, the term “computer” isused to refer to any type of data processing device which is capable ofexecuting digitally programmed instructions. The term “client computer”refers to any computer capable of connecting to a server computer on anetwork and performing a function with the server computer. An exampleof a typical computer for use on a network is a Pentium or higher classPC with Windows operating system of Microsoft Corp., Redmond, Wash., orMacintosh or higher class PC with Macintosh OS operating system of AppleComputer Corp., Cupertino, Calif. However, a client computer can also bea wide range of other network-connectable computing devices such aspersonal digital assistants (PDAs), text messaging pagers, digitalcellphones enabled with Wireless Application Protocol (WAP), advanceddigital game machines, digital set top boxes for televisions, and evenCPU-controlled household appliances. The term “server computer” is usedto refer to any type of data processing device that is connected to anode on a network for providing services to client devices on thenetwork.

[0022] The client computer 110 is what a sender or recipient uses tocompose and send, and receive and view, handwritten or handdrawn emailmessages. The client computer preferably is of the type that can run astandard web browser which supports an email client, such as thosecompatible with Microsoft IE 4.x browsers, licensed by Microsoft Corp.,of Bellevue, Wash., or Netscape 4.x web browsers, licensed by AmericaOnline, Inc., of Fairfax, Va. The standard browsers preferably alsosupport the Java Virtual Machine, Version 1.2 or higher, licensed by SunMicrosystems, of Mountain View, Calif., which is the preferred platformfor programming and distributing the handwriting messaging software inthe present invention as Java applets or Java-based plug-ins to thebrowsers. The standard web browsers connect to the network using anystandard protocol recognized on the network. For example, on theInternet standard web browsers use the TCP/IP protocol. Connection tothe network may be made by modem over a dial-up telephone line, DSLline, cable modem, Internet access connection, or a local area network.

[0023] The handwriting or handdrawing input device can be a touchscreen, pen input device, stylus pad, optical pointer, mouse, etc.,which is attached to the client computer to allow the user to handwriteor handdraw messages in a graphical data capture area of the emailclient of the web browser set up for that purpose. Examples of suchinput devices include the Wacom Graphire™ pen tablet sold by WacomTechnology Corporation, of Seattle, Wash., which attaches to the clientcomputer via a serial or USB port. The pen device could also beintegrated with a touch screen, e.g., as also offered by Wacom, or partof the computer itself, e.g., as offered with the Sharp SJ5, Copernicusand Pro Stations sold by Sharp Corporation, of Tokyo, Japan.

[0024] The server computer 120 is a central processing server for thegraphical email system. It is connected to the network to communicatewith the client computers using, for example, the TCP/IP protocol on theInternet. In the preferred implementation, the server computer storesthe graphical email handling software that is downloaded to the clientcomputers. It authenticates users against a directory of authorizedusers and manages and tracks the state of concurrent user sessions. Forsending and receiving graphical email, it communicates with thegraphical email software on the client computers. When a handwritingmessage is composed on the client computer, the server computer receivesthe graphical email message and stores it in a database. When ahandwriting message is to be viewed by the client computer, the servercomputer fetches the graphical email message from the database and sendsthe message to the client computer for display as a handwriting image.

[0025] Referring to FIG. 1B, the graphical email handling components ofthe preferred system are illustrated. The client computer 210 includes aHandwriting Messaging Client 211 which handles sending and receivinggraphical email messages, a Java Virtual Machine (VM) 212 which sets upthe graphical data capture area and display area for the handwritingmessage, and the Web Browser 213 which provides the user interface forconnecting to the Internet (or other network). There are two versions ofthe Handwriting Messaging Client software described below, i.e., a Javaapplet and a Java application version. The Java applet version is usedfor sending and receiving handwritten email messages via a servercomputer's mail server functions. The Java application version of thehandwriting messaging client software is installed with the users'browsers for real-time messaging between users or via a real-time Javaserver. The client software includes a drawing editor/viewer forcomposing and viewing handwritten email messages, as well as thefunctions to communicate with a server in a server-client configuration.

[0026] The server computer 220 includes an HTTP Server Interface 221 forconnection to the Internet, a User Directory 222 for identifying emailaddresses of authorized users, User Message Queues 223 for deliveringreceived messages to users, a Downloadable Software Server 224 fordownloading the graphical email software to client computers, a MailServer Interface 225 for handling sent and received email, a JavaVirtual Machine (VM) 226 which provides the platform for interactingwith the users' graphical email software, and a Handwriting MessagingServer 227 which formats email messages using the graphical datacaptured by the software on the client computers. There are fourversions of the Handwriting Messaging Server described below, i.e., aHandwriting Java Server Version, a Domino Server Version, a Real-TimeJava Server Version, and an Internet Email Server Version.

[0027] Handwriting Java Client and Handwriting Java Server Version

[0028] With reference to FIG. 2B, this version of the system uses bothhandwriting client and server software components along with the usualemail server functions. A Handwriting Java Client 210 a operates in aweb browser (such as Netscape Navigator or Microsoft Internet Explorer)as a Java applet on the client computer 210. The applet 210 a provides adrawing editor to compose and send handwritten email messages, and onthe receiving end, also provides the drawing viewer to view thehandwritten message. The implementation of a Java applet for thehandwriting messaging function is described in further detail below.Generally, the use of a Java applet to provide a drawing applicationintended to run in a browser is known to those knowledgeable in thisfield. As one example, a Java applet used to set up a drawing editor ina browser for a “whiteboard” application run on an intranet is theSameTime™ whiteboard applet offered with Lotus™ Notes, a workgroupsoftware suite distributed by Lotus Development Corp., of Cambridge,Mass., which is a division of IBM Corp., Armonk, N.Y.

[0029] A Java applet is created specifically for setting up a drawingeditor/viewer operable with an email client running with a web browserfor capturing, sending, receiving and viewing a handwriting orhanddrawing email message. The Java applet consists of a set of moduleswhich run the different messaging functions of the drawingeditor/viewer. The data capture and sending module operates by firstrecognizing the handwriting input device connected to the clientcomputer, then creating a temporary memory space for holding the inputreceived from the input device, capturing the input signals from theinput device (usually a series of coordinate data inputs representingtime-sampled coordinate positions detected for the trace of the inputdevice), converting the input signals to pixel data (screen coordinates,color, intensity), and displaying the pixel data in a display area or“panel” of the email client to show the handwriting or handdrawn imageinput by the user through the input device. The display allows the usersending a handwritten email message to verify what is being written, andis also the same display that allows a user receiving the handwrittenemail message to view the corresponding image. An example of a datacapture and sending module according to the invention is illustrated inthe source code listing appended hereto as Appendix I.

[0030] When the graphical email message is completed, the user addressesthe message to a recipient and sends it. The Handwriting Java Clientformats and sends the email message with the pixel data to theHandwriting Java Server component 220 a on the server computer 220,which converts the pixel data to a GIF file attachment to a standardemail body. The Handwriting Java Server component 220 a communicateswith an SMTP email gateway computer 240 to send email messages using theindustry-standard SMTP Internet protocol. The SMTP email gateway sendsthe email messages to mail servers 250, such as an industry-standardIMAP (Internet Message Access Protocol) mail servers like MS Exchange orLotus Domino on the Internet. Email recipients can retrieve their emailfrom the mail servers 250 using a standard Internet email client 260,such as Microsoft Outlook, Pegasus Mail, Eudora mail, or Lotus Notes.When the graphical email is retrieved with a standard Internet emailclient, the handwritten drawing is viewed as a file attachment using aGIF viewer operates with the web browser. Email recipients on clientcomputers 230 who have the Handwriting Java Client 210 a in their webbrowser can receive their handwritten email messages directly. Thegraphical email message is retrieved from the Handwriting Java Servercomponent 220 a on the server computer 220 and displayed in theHandwriting Java Client viewer as a handwritten or handdrawn image.

[0031] With reference to FIG. 2A, the specific process steps involvedwith sending a handwritten email message and viewing it by the recipientare described in detail below:

[0032] 1. The Handwriting Java Client software is downloaded from theHandwriting Java Server to the client computer through a web page thatis displayed in a web browser.

[0033] 2. The Handwriting Java Client software is initialized andestablishes a connection to the Handwriting Java Server using theindustry-standard TCP/IP and remote method invocation (RMI) protocols.After initialization is complete, the Handwriting Java Client softwaredisplays a drawing composition editor that is used to compose thehandwritten message.

[0034] 3. The handwritten message is composed by the user in a graphicaldata capture area set up by the drawing editor, selecting theappropriate writing and drawing tools, colors, and styles as offered inthe Handwriting Java Client software.

[0035] 4. While the user is drawing in the graphical data capture area,the pixel data representing the drawing is stored in local memory. Whenthe graphical email message is completed, the user addresses the messageto a recipient using Javascript fields on the web page in which the Javahandwriting client is embedded.

[0036] 5. When the user issues a “Send” command, the Handwriting JavaClient formats the message and sends the pixel data to the HandwritingJava Server. The graphical message is still in GIF format at this time.

[0037] 6. The Handwriting Java Server processes the graphical messagedata using standard base64 encoding. This turns the data into ASCII textthat can be transmitted as standard email data packets by theHandwriting Java Server.

[0038] 7. The Handwriting Java Server creates an outgoing email messagethat contains the encoded handwritten message as a GIF attachment.

[0039] 8. The Handwriting Java Server sends the outgoing email messagewith GIF attachment via the SMTP (Simple Mail Transfer Protocol) gateway240.

[0040] 9. The SMTP gateway transfers the message to an IMAP mail serverbased on the recipient's address. The IMAP server allows clients runningit to retrieve mail from the host mail server also running the protocol,similar to POP-3, but with extended capabilities. Recipients can openthe email as a standard email message with a GIF attachment (steps 10a,10b below) or with a Handwriting Java Client applet if downloaded totheir web browser (steps 11a, 11b, 11c below).

[0041] 10a. The IMAP server sends the email with the handwritten messageas an attached encoded GIF file to an external email address for therecipient.

[0042] 10b. When the recipient opens the email containing theattachment, the message can be displayed on their computer using a GIFviewer.

[0043] 11a. The IMAP server sends the email with the handwritten messageas an attached encoded GIF file to an internal email address, i.e., toan address on a server computer 220 that is running the Handwriting JavaServer component 220 a.

[0044] 11b. The Handwriting Java Server decodes the attached GIF fileinto pixel data and sends it to the Handwriting Java Client appletrunning in the recipient's web browser.

[0045] 11c. The Handwriting Java Client receives the pixel data from theHandwriting Java Server and renders the pixel data as a handwritten orhanddrawn image in the drawing editor/viewer.

[0046] Handwriting Java Client and Domino Server Version

[0047] With reference to FIG. 3B, this version of the system uses theHandwriting Java Client 310 a along with a Lotus™ Domino Server on theserver computer 320. As before, the Handwriting Java Client 310 aoperates in a web browser as a Java applet on the client computers 310,330. The applet 310 a provides a drawing editor/viewer to compose andview handwritten messages. For sending and receiving email internally,the applet 310 a communicates with the Domino Server on the servercomputer 320. The Domino server sends email messages among users withclient computers running Java client software connected to the server'sintranet. The Domino Server communicates with an SMTP email gatewaycomputer 340 to send email messages externally using the SMTP Internetprotocol. The SMTP email gateway sends the email messages to mailservers 350 on the Internet. External email recipients can retrievetheir graphical email using a standard Internet email client 360. Thehandwritten drawing can then be viewed as a file attachment using a GIFviewer such as a web browser.

[0048] With reference to FIG. 3A, the process steps involved withsending a handwritten email message through a Domino Server and viewingit by the recipient are described in detail below:

[0049] 1. The Handwriting Java Client software is downloaded from theHandwriting Java Server to the client computer through a web page thatis displayed in a web browser.

[0050] 2. The Handwriting Java Client software is initialized andestablishes a connection to the handwriting Domino Server using theTCP/IP and remote method invocation (RMI) protocols. Afterinitialization is complete, the Handwriting Java Client softwaredisplays a composition editor that is used to compose the handwrittenmessage.

[0051] 3. The handwritten message is composed by the user selecting theappropriate writing and drawing tools, colors, and styles.

[0052] 4. While the user is drawing, the pixel data representing thedrawing is captured in the input data area and stored in local memory.The user addresses the email message to a recipient using Javascriptfields on the web page in which the Handwriting Java Client is embedded.

[0053] 5. When the “Send” command is issued, the Handwriting Java Clientencodes the pixel data in base64 format.

[0054] 6. The Web page along with the encoded image is posted to theDomino Server using Javascript.

[0055] 7. An agent on the Domino Server decodes the image and creates anemail message with an attached GIF file.

[0056] 8. The Domino server sends the email message with attachment toan external recipient's address via an SMTP (Simple Mail TransferProtocol) gateway.

[0057] 9. The SMTP gateway transfers the email message to a mail server,which routes the message to the recipient's email box.

[0058] 10a. an external recipient's e-mail client retrieves the emailmessage with the GIF attachment from an Internet email server.

[0059] 10b. When the user (recipient of the email) opens the emailcontaining the GIF attachment, the handwritten message in the attachmentcan be displayed using a GIF viewer.

[0060] 11a. If the recipient has an internal email address handled by aDomino Server, the server retrieves the email message with the GIFattachment.

[0061] 11b. The Domino Server sends the email message to the clientcomputer as a web page when the client requests the page via their webbrowser email client.

[0062] 11c. The client's web browser email client displays thehandwritten message as an image.

[0063] Handwriting Java Client and Real Time Server Version

[0064] With reference to FIG. 4B, this version of the system uses theHandwriting Java Client with a Real Time Handwriting Java Server. Asbefore, the Handwriting Java Client 410 a operates in a web browser as aJava applet on the client computer 410, 430. The applet 410 a provides adrawing editor/viewer to compose and view handwritten messages. Theapplet 410 a communicates with the Real Time Java Server component 420 aon a server computer 420. The receiving Handwriting Java Client isnotified when an email message for that user has been sent to the RealTime Java Server, and retrieves the email message from the server. Inthis way, communication can take place using the Handwriting Java Clientin near real-time. This version is useful for users using mobilecommunication devices, such as PDAs, WAP-phones, etc.

[0065] With reference to FIG. 4A, the process steps involved withsending a handwritten message through a Real-Time Handwriting JavaServer and and viewing it by the recipient are described in detailbelow:

[0066] 1. The client computer has a downloaded version of theHandwriting Java Client software, and establishes a connection with theserver computer on which the Real Time Java Handwriting Server isrunning.

[0067] 2. The client computer identifies the user to the server byentering a user name and password.

[0068] 3. The server maintains a list of registered users, and a list ofcurrently active users. When the client logs onto the server, the serverlooks up the user name and password in order to authenticate that personas a registered user, then the user is added to the list of activeusers.

[0069] 4. The client computer displays a list of active and inactiveusers which is downloaded from the server.

[0070] 5. The user clicks on a name from the list of active users toidentify the user to whom they want to send a message.

[0071] 6. After the user selects a name from the list of active users,the handwriting editor is displayed in the Handwriting Java Client.

[0072] 7. The user creates a message by selecting the appropriatewriting and drawing tools, colors, and styles.

[0073] 8. The Handwriting Java Client formats the message and stores itas pixel data until it is ready to be sent.

[0074] 9. The completed message is sent to the Real Time JavaHandwriting Server in pixel format.

[0075] 10. The server receives the message and puts it into a repositorywhere it can be retrieved by the user to whom it is addressed.

[0076] 11. All active client computers poll the repository on the serverevery five seconds to see if there are any messages for them.

[0077] 12. When the Handwriting Java Client on the recipient's computerdiscovers a message in the repository, the client computer requests themessage from the server.

[0078] 13. The server retrieves the message from the repository andsends it to the client computer of the recipient.

[0079] 14. The recipient's client computer displays the message in theHandwriting Java Client's drawing editor/viewer.

[0080] Handwriting Java Client and Internet Email Server Version

[0081] With reference to FIG. 5, this version of the system uses theHandwriting Java Client along with a standard Internet email mailserver. In this version, the Handwriting Java Client is installed as aplug-in to the client computer's web browser and operates as describedbefore, and there is no Handwriting Java Server component. TheHandwriting Java Client 510 a operates in a web browser as an installedJava applet on the client computer 510. The applet 510 a provides adrawing editor/viewer to compose and view handwritten messages. TheHandwriting Java Client formats the message and stores it as pixel datauntil it is ready to be sent. The message is addressed using Javascriptfields on the Web browser form in which the Java applet is embedded. Thepixel image is converted into a GIF file and attached to the emailmessage. The Java applet 510 a communicates with the Mail Servercomputer 540 either directly or through an SMTP gateway computer 520.The Mail Server 540 sends the email message with encapsulated GIF imagedirectly to the recipient's client computer 530, and the recipient viewsthe attached GIF file using whatever GIF viewer they have available ontheir computer.

[0082] Handwriting Java Client and Wireless Internet Email ServerVersion

[0083] With reference to FIG. 6, this version of the system uses theHandwriting Java Client along with a standard Internet email mail serverproviding email service to wireless client computers, such as WAP-phonesand PDAs. As before, the Handwriting Java Client 610 a operates in a webbrowser as an installed Java applet on the client computer 610. Theemail message is formatted with the handwritten image converted into anattached GIF file. The Java applet 610 a communicates with the MailServer computer 640 either directly or through an SMTP gateway computer620. The Mail Server 640 includes a Wireless Application Protocol (WAP)interface which sends the email message with encapsulated GIF imagethrough a Wireless Service Provider having WAP handling capability tothe recipient.

[0084] The recipient's computer can be a thin client 630 a such as adigital cellphone with a WAP interface for receiving the email messagevia Internet and displaying the GIF file via its mini-web browser.Alternatively, the client computer may be a more robust, mobile clientcomputer 630 b such as a Palm Pilot™ or similar type of PDA, which hasthe memory and CPU capacity to have a Handwriting Java Client installedwith its web browser and use it for composing and sending handwritingemail messages as well as viewing them. The mobile client computer canthen use the Handwriting Java Client to format the handwritten messageas an attached GIF file (described in the Internet Email Server version)or as pixel data sent with the email for viewing by another clientcomputer having a Handwriting Java Client running in its web browser (asdescribed in the Real-Time Server version).

[0085] A handwriting messaging application written for a palm-top or PDAdevice would currently have to be written in C or C++ because there areno current Java Virtual Machine adaptations that can be used for suchdevices. However, several efforts are underway to create such Java VMmodules for palm-top and PDA devices. Using C/C++ to write fullapplications on palmtop devices has the current advantage that thesecurity sandbox imposed on Java applets does not exist, therebyallowing a wider variety of messaging applications to be written, aslong as actual implementations are kept simple (due to low CPU power andmemory storage availability). The handwriting client can be kept simpleby including only pen and eraser tools and different line thicknesses.Only palm-top devices with color displays would need a color palette;black and white palm-top devices would dither incoming messages to blackand white while sending only two-color images. Since the client iswritten in C or C++, networking would be limited to standard TCP/IPcommunications instead of Java's RMI. For communications through aproxy, packets can be wrapped in HTTP and sent through an HTTP proxy. Ifa handwriting server component is used with the palm-top devices, itwould remain largely the same as described above, except that it wouldhandle only standard TCP/IP communications, and would add the ability toreceive messaging information wrapped in HTTP packets from behind afirewall.

[0086] The functions of the module of the client component whichconverts and sends the handwritten message for handling as an emailmessage depends upon the configuration of the system. If the system isconfigured with a Lotus Domino server on a Java VM platform, then thecaptured handwriting data is sent as a message to the Domino server inthe form of a stream of pixel data which is converted by the server to aGraphics Interface Format (GIF) file and appended with an email headerto form an email message handled by the server's email service. If thesystem is configured with a standard type of Internet email server, thenthe captured handwriting data can be converted at the client computer toa GIF file and sent as an email message to the Internet email server. Ifthe system is configured for real time messaging between client devices,the client device can send the handwritten message as a GIF fileappended to standard email, or send it as pixel data to a real-timemessaging server which provides real-time messaging service betweenclient devices.

[0087] In FIG. 7A, the user interface for the drawing editor/viewer ofthe Handwriting Java Client is illustrated. For composing a handwrittenmessage, the editor/viewer 710 has a graphical data capture area 720 inwhich handwritten input can be entered with a touch pen or on a styluspad and captured as pixel data. The editor/viewer 710 can offer a suiteof standard types of drawing tools such as making line, circle, orpolygon shapes and spraying and filling image areas. The graphical datacapture area 720 is also the graphical image viewing area for emailreceived with an attached GIF file or pixel data. In FIG. 7B, a typicallayout for a PDA of the editor/viewer interface with drawing tools andcolor palette is illustrated.

[0088] Handwriting Client and Wireless Real Time Server Version

[0089] The version of the system illustrated in FIG. 6 may be modifiedfor real-time messaging between PDAs and mobile communication devices ofthe “always on” type that are connected to a real-time server through anInternet Wireless Service Provider, rather than a WAP-type phoneinterface. Examples of “always-on” types of Internet wireless messaginginclude Research in Motion's (RIM's) BlackBerry™ pager email devices,Motorola Timeport™ P935 Personal Communicator, or the Palm's announcedi705 wireless device with always-on access to email.

[0090] Similar to the sequence outlined above for the Handwriting JavaClient and Real Time Server Version, the always-on wireless messagingdevice is provided with a handwriting client that sets up a handwriting(e.g., stylus) data capture area in the device to capture the sender'shandwriting input and send it as an attachment with a wireless email ormessage transmission. The wireless service provider employs a real-timeserver that receives the wireless email or message through theappropriate wireless Internet service interface and routes the messageto a private mail or message repository for the intended recipient. Ifthe recipient has an always-on device, the message in that person'sprivate repository is sent to the recipient's device through wirelesstransmission, where it pops up as a message in the device display. Witha handwriting viewer or a mode for viewing attached graphics files, therecipient sees the message instantaneously as handwriting.

[0091] The wireless real-time server version allows people tocommunicate privately and personally by instantly sending handwritingand other graphical data to each other. The handwriting client hasutilities to allow a user to maintain an address book of people theywish to communicate with. When the user logs on to the real time server,they are authenticated with a user name and password and are registeredas an active user. The handwriting client allows the user to see otherusers that are currently on-line and to initiate a private, real timecommunication session with an on-line user. The handwriting clientaccepts handwritten and other graphical messages, packages the data in amessage and sends it to the recipient. The recipient receives an audiblenotification that they have a message and is able to view the message intheir handwriting client. The recipient is also able to reply to thesender by composing a new handwriting message or copying and writingover the original message that was received. This person-to-personcommunication can continue back and forth, effectively allowing theparties to communicate using handwriting and drawings.

[0092] This method of instantly sending handwriting between to partiesdiffer from other real time communication systems such as chat sessionsand systems commonly referred to as “electronic whiteboards” and“instant messaging systems” in the following ways.

[0093] 1. Private message pools for graphical messages: In theinvention, graphical messages to be sent to a recipient are stored inthe recipient's private message pool and not a shared, common pool. Therecipient's client software polls their personal pool and not a commonarea. This method supports private, one-on-one communications similar toemail, except in real time. Chat rooms and whiteboards are intended forgroup communication and incorporate shared message pools.

[0094] 2. Graphical handwriting client: The invention allows users tocommunicate using handwriting input rather than text input. Thehandwriting client is essentially a graphics input editor implemented inJava which communicates with a real time server. The real time serverconverts the input data into a real time messaging format that is storedin a repository location and retrieved by the recipient's client.

[0095] 3. Control over when message is sent: In the inventionhandwriting messages are composed privately in the handwriting clientand sent on demand by the sender, similar to how standard text email iscomposed locally and sent on demand. Whiteboard systems send graphicaldata in real time as they are drawn to all users that are viewing thewhiteboard.

[0096] The wireless real time server version may also be implemented onportable PDA devices and mobile phones that use the Short MessagingService (SMS) or Enhanced Messaging Service (EMS) for wireless instantmessaging on wireless phone service. SMS and EMS now permit graphicsattachments to be sent with messages. The handwriting client softwarecan be implemented to run on these mobile devices using a micro orpersonal Java platform that are becoming available on these devices. Thereal-time server can correspondingly be adapted with an interface tosupport handwriting messages sent through the messaging formats used bythese mobile messaging devices.

[0097] Handwriting Java Client for MMS Messaging in Cellphone NetworkVersion

[0098] In FIG. 8, the MMS Cellphone Messaging version of the handwritingmessaging system allows people to communicate privately between MMScapable terminals by composing and sending handwriting and othergraphical data to each other. The originator composes a handwritingmessage using a pen device connected to the handset and addresses themessage to the receiver. An MMS compliant message is created and sent toan MMS Center (MMSC) that is provided by the originator's wirelessservice provider. The MMSC attempts to forward the message to thereceiver. If the receiver is unavailable, the MMSC stores the messageand delivers the message later. If the message cannot be deliveredwithin a certain amount of time, the message is discarded.

[0099] MMS is becoming a standard method for sending and receivingmultimedia content over wireless networks. Just as our originalinvention took advantage of standard methods for sending SMTP basedemail between computers, the same principle can be implemented fordigital wireless phone devices and Internet-capable phones (I-phones)using a digital messaging protocol, such as the now standard MMSprotocol (as published by the MMS Conformance Group), for wirelessmobile devices. The handwriting client software can readily beimplemented to run on mobile devices using the Java 2 Micro Edition(J2ME) platform that are becoming commonly available on these devices.

[0100] The Java client software is programmed to set up the graphicaldata capture input area in the client device and capture the graphical(pixel) data for conversion to a standard format such as jpeg or gifhandled by the digital messaging protocol used in digital phone devicesor I-phones. For example, the MMS protocol can support jpeg and giffiles converted by the handwriting client application in the followingmanner. While the user is drawing with a stylus or pen on the graphicaldata capture area, the pixel data representing the drawing are stored inlocal memory in the client device. The user can address the handwrittenmessage to a recipient using Javascript fields of the graphicalinterface in which the Java handwriting client is embedded. When theSEND MESSAGE command is selected by the user, the Handwriting JavaClient formats a message with the pixel data in gif format to theHandwriting Java Server, which then processes the message and sends itto the MMS-compliant client device of the recipient using the MMSCserver protocol.

[0101] In FIG. 9, the steps involved with sending a handwritten messageand viewing it by the recipient are illustrated using MMS-compliantmobile phone devices.

[0102] 1. The handwriting client software is used to compose ahandwritten message. The handwriting client software is running in aJ2ME environment that is available on mobile devices. The mobile phonealso has a pen enable screen or an attached pen pad device that capturesthe user's pointer movements. The handwriting client software allows theusers to select drawing tools and captures the handwriting image createdby the pointer movements. Images can be captured with the mobile devicescamera or downloaded as a background graphic that can be annotated withhandwriting and is included in the message.

[0103] 2. The originator addresses the message to the recipient(s).

[0104] 3. The originator's terminal contains information about thewireless provider's MMSC, initiates a Wireless Access Protocol (WAP)connection and sends the handwriting message as the content of the WSPPOST command

[0105] 4. The MMSC accepts the message and responds to the originatorover the same WAP connection. A “message send” indicator is displayed onthe originator's terminal.

[0106] 5. The MMSC uses WAP PUSH command to attempt to send anindication message to the receiver.

[0107] 6. The receiver's terminal initiatives a WAP connection and usesthe WSP GET command to retrieve the handwritten message from the MMSC.

[0108] 7. Handwritten message is sent to the receiver's terminal ascontent of a WSP GET RESPONSE command over the same WAP connection. Thereceiver's terminal indicates, “Message received”

[0109] 8. The receiver's terminal acknowledges receipt with WSP POSTcommand over the same WAP connection.

[0110] 9. The MMSC uses WAP PUSH command to indicate to originators thatmessage was delivered. The originator's terminal indicates, “Messagedelivered”.

[0111] In FIG. 10, the interconnection of components of the present MMShandwritten messaging version is illustrated. The sender's wireless ordigital cellphone device 410 has a J2ME handwriting client installed forcapturing handwritten input as graphical data and sending it as an MMSmessage using the standard MMSC protocol. The MMS message is received ata mobile network center 420 which includes a WAP gateway, and MMS(message processing) center, a PushProxy gateway and SMSC transmissionprotocol. The MMS message from the sender is “pushed” to the recipient'swireless or digital cellphone device 430 which similarly has a J2MEhandwriting client installed for viewing (and sending back replies to)the MMS message. The recipient can thus view the handwritten message asa graphical image on the mobile receiving device.

[0112] It is understood that many other modifications and variations maybe devised given the above description of the principles of theinvention. It is intended that all such modifications and variations beconsidered as within the spirit and scope of this invention, as definedin the following claims.

I claim:
 1. A multimedia messaging (MMS) system operable on a wirelessor digital cellphone network comprising: (a) a server component operableon a server computer on a network with an MMS messaging server forreceiving an electronic message sent from a sender and sending it to arecipient to whom it is addressed, (b) a remote client device for thesender connectable to the server computer through an online dataconnection to the network, and a client component operable on the remoteclient device for setting up a graphical data capture area in a visualinterface of the remote client device, said client component including agraphical input device that is operatively coupled to the graphical datacapture area for allowing the user to enter handwritten or handdrawninput through the graphical input device, and for capturing thehandwritten or handdrawn input as graphical data and sending it as anelectronic message in MMS protocol to the MMS messaging server componentvia the network for sending to the recipient addressed, and (c) at leastanother remote client device for the recipient connectable to the servercomputer through an online data connection to the network, having autility for receiving the electronic message sent to the recipient bythe server component and viewing it as a handwritten or handdrawnmessage.
 2. A multimedia messaging (MMS) system according to claim 1,wherein the client component is operable for also setting up a graphicaldata viewing area for viewing electronic messages with graphical datasent by the server component.
 3. A multimedia messaging (MMS) systemaccording to claim 1, wherein the client component is a Java appletinstalled on the remote client device.
 4. A multimedia messaging (MMS)system according to claim 1, wherein the remote client device is adigital cellphone device supporting the MMS protocol.
 5. A multimediamessaging (MMS) system according to claim 1, wherein the remote clientdevice is a wireless mobile communication device supporting the MMSprotocol.
 6. A multimedia messaging (MMS) system according to claim 1,wherein the client component converts the input graphical data to agraphical data attachment to an MMS format message.
 7. A multimediamessaging (MMS) system according to claim 1, wherein the clientcomponent converts the input graphical data to a graphical dataattachment to an instant messaging format message.
 8. A multimediamessaging (MMS) system according to claim 1, wherein the clientcomponent converts the input graphical data to a graphical dataattachment to email.
 9. A multimedia messaging (MMS) system according toclaim 1, wherein the client component converts the input graphical datato a graphical data attachment to an SMS format message.
 10. Amultimedia messaging (MMS) system according to claim 1, wherein themultimedia messaging (MMS) server routes the electronic message sentfrom a sender to the intended recipient by a push proxy.
 11. Amultimedia messaging (MMS) method comprising: (a) providing a graphicaldata capture area in a visual interface operable in a client componentof a remote client device having an online connection to a network, anda graphical input device operatively coupled to the graphical datacapture area for allowing a user to enter handwritten or handdrawninput; (b) composing an handwritten or handdrawn message on the remoteclient device for a sender via the graphical data capture area andgraphical input device, capturing it as graphical data, and sending itas an electronic message in MMS format on a network having a servercomponent operable on a server computer which supports the MMSmessaging; and (c) receiving via the multimedia messaging (MMS) serveran electronic message in MMS format sent from a sender and sending it toa remote client device for a recipient to whom it is addressed.
 12. Amultimedia messaging (MMS) method according to claim 11, wherein theclient component is operable for also setting up a graphical dataviewing area for viewing electronic messages with graphical data sent bythe server component.
 13. A multimedia messaging (MMS) method accordingto claim 11, wherein the client component is a Java applet installed onthe remote client device.
 14. A multimedia messaging (MMS) methodaccording to claim 11, wherein the remote client device is a digitalcellphone device supporting the MMS protocol.
 15. A multimedia messaging(MMS) method according to claim 11, wherein the remote client device isa wireless mobile communications device supporting the MMS protocol. 16.A multimedia messaging (MMS) method according to claim 11, wherein theclient component converts the input graphical data to a graphical dataattachment to email.
 17. A multimedia messaging (MMS) method accordingto claim 11, wherein the client component converts the input graphicaldata to a graphical data attachment to an instant messaging formatmessage.
 18. A multimedia messaging (MMS) method according to claim 11,wherein the client component converts the input graphical data to agraphical data attachment to an MMS format message.
 19. A multimediamessaging (MMS) method according to claim 11, wherein the clientcomponent converts the input graphical data to a graphical dataattachment to an SMS format message.
 20. A multimedia messaging (MMS)method according to claim 11, wherein the multimedia messaging (MMS)server routes the electronic message sent from a sender to the intendedrecipient by a push proxy.